
package com.trial.area.address.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.trial.area.address.dao.DeliveryAddressDao;
import com.trial.area.address.entity.DeliveryAddressVO;
import com.trial.area.address.param.DeliveryAddressParam;

/**
 * 收货地址Service实现类
 *
 * @author 朱国军
 * @version 2016年07月17日 朱国军
 */
@Service
public class DeliveryAddressService {
    
    @Autowired
    private DeliveryAddressDao deliveryAddressDao;
    
    /**
     * 新增，注：返回的添加的条数，获取主键用entity.getId();
     *
     * @param entity 要增加的收货地址对象
     * @return 返回新增的条数
     */
    public Integer insert(DeliveryAddressVO entity) {
        return deliveryAddressDao.insert(entity);
    }
    
    /**
     * 修改
     *
     * @param entity 要修改的收货地址对象
     * @return 返回修改的条数
     */
    public Integer update(DeliveryAddressVO entity) {
        return deliveryAddressDao.update(entity);
    }
    
    /**
     * 根据ID获取收货地址实体
     *
     * @param id 主键
     * @return 收货地址信息
     */
    public DeliveryAddressVO findById(String id) {
        return deliveryAddressDao.findById(id);
    }
    
    /**
     * 按查询条件【分页】查询
     *
     * @param param 收货地址查询条件
     * @return 收货地址列表
     */
    public List<DeliveryAddressVO> queryByPage(DeliveryAddressParam param) {
        return deliveryAddressDao.queryByPage(param);
    }
    
    /**
     * 根据ID删除收货地址
     *
     * @param id 主键
     */
    public Integer delete(String id) {
        return deliveryAddressDao.delete(id);
    }
    
    /**
     * 根据用户ID查询收货地址信息
     *
     * @param userId 用户ID
     * @return 收货地址信息
     */
    public DeliveryAddressVO findByUserId(String userId) {
        return deliveryAddressDao.findByUserId(userId);
    }
}
